Image quality is understood in a general sense to refer to the degree of detail that can be discerned from an image, and the accuracy of reproduction of a scene. The quality of an image is assessed by measuring various factors, such as image contrast, image resolution, dynamic range and color rendering properties.
Another factor by which an image quality is assessed is image sharpness. A sharp image is one with well defined edges, showing high contrast and high resolution properties.
Degradation of image sharpness is known as blurring, and a blurred image is taken to be an image which does not display optimal sharpness characteristics. It is to be understood that no image will exhibit perfect sharpness characteristics, but for a given object imaged by a given image sensor there will be a certain maximum sharpness that can be achieved given the position of the object, the lighting conditions and the characteristics of the image sensor. A blurred image will be understood in general to mean any image that does not exhibit the maximum achievable sharpness in that sense. In practice, an image may be considered as “blurred” if its sharpness does not meet certain predefined criteria, which effectively define a quantified sharpness threshold that defines an acceptable sharpness for an image. The threshold can vary according to application and sensor.
Blurring can be caused by incorrect focus of incident light onto an image sensing array, arising from a non-optimal position and/or shape of lens with respect to an image sensing array due to incorrect manual setting of focus parameters or from errors in autofocus and edge detection algorithms.
Another source of blurring arises from undesired motion of the image sensor during image capture, as arises for example from motion of the human hand or in cases where the camera or its user is on an unstable surface. This problem is further exaggerated if an image is being shot with a long exposure time, for example in low light conditions. This source of blurring will hereafter be referred to as “camera shake” for ease of reference.
Various image stabilization techniques are known for addressing the problem of camera shake. One category involves the mechanical movement of a lens or prism, as controlled by motion sensors so as to reduce or eliminate the effects of camera shake. However, such systems add considerable complexity and can sometimes consume significant power.
It is also known to provide various forms of electronic image stabilization. One such technique involves the capture of a number of images, for example four, and then the raw data from the four images is analyzed and stitched together to form a composite image having an optimum sharpness. This technique yields good results, but requires a frame store, that is, a memory array that is large enough to store uncompressed image data of at least one complete image frame. Where a number of images are captured for comparison, the frame store memory must be large enough to store each of the uncompressed captured images,
The use of a frame store adds considerably to system complexity, cost, power consumption and size. For some devices, such as high end digital still cameras, these disadvantages can be accepted. However for some devices these drawbacks are such that image stabilization cannot be contemplated. For example, an image sensor that is incorporated in a mobile telephone cannot typically incorporate such image stabilization techniques because manufacturing and industrial pressures to reduce form factor and camera module size mean the size of the image sensor circuit must be minimized where possible, and battery life performance requirements mean that the use of a frame store memory is not desirable.
Furthermore, the stitching algorithms are complex and require a large amount of digital logic to be implemented, bringing about similar disadvantages in terms of system complexity, cost, power consumption and size.
Therefore, there is a need for an image sensor that can account for camera shake such as without the need for a frame store and/or without the need for computationally complex stitching algorithms.